﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Generic.Contract;
using Contract.Business.Entity;

namespace Contract.Business.Filter
{
    //Criado por : Gustavo
    //Data       : 10/25/2011 12:32:29 AM
    public class FEPagamento : FilterEntity
    {
        #region Atributos

        private BEVenda _Venda;
        private int? _CodigoVenda;
        private BETipoPagamento _TipoPagamento;
        private int? _CodigoTipoPagamento;
        private decimal? _ValorMax;
        private decimal? _ValorMin;
        #endregion

        #region Propriedades
        public BEVenda Venda
        {
            get
            {
                return this._Venda;
            }
            set
            {
                BEVenda previousValue = this._Venda;
                if ((previousValue == null) || (!previousValue.Equals(value)))
                {
                    this.SendPropertyChanging();
                    this._Venda = value;
                    if (value != null)
                    {
                        this._CodigoVenda = value.Codigo;
                    }
                    else
                    {
                        this._CodigoVenda = default(int);
                    }
                    this.SendPropertyChanged("Venda");
                }
            }
        }

        public int? CodigoVenda
        {
            get
            {
                return this._CodigoVenda;
            }
            set
            {
                if (this._CodigoVenda != value)
                {
                    this.SendPropertyChanging();
                    this._CodigoVenda = value;
                    this.SendPropertyChanged("CodigoVenda");
                }
            }
        }

        public BETipoPagamento TipoPagamento
        {
            get
            {
                return this._TipoPagamento;
            }
            set
            {
                BETipoPagamento previousValue = this._TipoPagamento;
                if ((previousValue == null) || (!previousValue.Equals(value)))
                {
                    this.SendPropertyChanging();
                    this._TipoPagamento = value;
                    if (value != null)
                    {
                        this._CodigoTipoPagamento = value.Codigo;
                    }
                    else
                    {
                        this._CodigoTipoPagamento = default(int);
                    }
                    this.SendPropertyChanged("TipoPagamento");
                }
            }
        }

        public int? CodigoTipoPagamento
        {
            get
            {
                return this._CodigoTipoPagamento;
            }
            set
            {
                if (this._CodigoTipoPagamento != value)
                {
                    this.SendPropertyChanging();
                    this._CodigoTipoPagamento = value;
                    this.SendPropertyChanged("CodigoTipoPagamento");
                }
            }
        }

        public decimal? ValorMax
        {
            get
            {
                return this._ValorMax;
            }
            set
            {
                if (this._ValorMax != value)
                {
                    this.SendPropertyChanging();
                    this._ValorMax = value;
                    this.SendPropertyChanged("ValorMax");
                }
            }
        }

        public decimal? ValorMin
        {
            get
            {
                return this._ValorMin;
            }
            set
            {
                if (this._ValorMin != value)
                {
                    this.SendPropertyChanging();
                    this._ValorMin = value;
                    this.SendPropertyChanged("ValorMin");
                }
            }
        }
        #endregion
    }
}
